1. Field of the Invention
The invention relates generally to networked computer systems for providing information and more particularly to computer implemented systems and methods to find affinities among personals advertisements.
2. Description of the Related Art
An affinity is a measure of association between different items. A person may want to know an affinity among items in order to identify or better understand possible correlation or relationships between items such as events, interests, people or products. An affinity may be useful to predict preferences. For instance, an affinity may be used to predict that a person interested in one subject matter also is likely to be interested in another subject matter. Specifically, for example, an affinity may be used to predict that a person who purchases a particular book is likely to be interested in purchasing one or more other specific books or that a person who plays a particular video game on-line is likely to be interested in playing one or more other video games.
One known approach to determining an affinity involves a computation based upon the number of occurrences of items and the number of occurrences of groupings of items. For example, according to this one approach, the affinity for item t1 with item t2 may employ information concerning:                N(t1): number of group IDs that include t1,        N(t2): number of group IDs that include t2,        N(t1, t2): number of group Ids that include both t1 and t2.        The affinity for item t1 for item t2 may be computed as,        N(t1,t2)/N(t1)        Conversely, the affinity for item t2 for item t1 may be computed as,        N(t1,t2)/N(t2)        
FIG. 1 is an illustrative drawing of a computer user interface screen showing a hypothetical affinity analysis result. The affinity analysis result shows affinity among three automobiles: Honda Accord Sedan, Toyota Camry and Ford Taurus. In this example, the primary vehicle in the affinity analysis is the Honda Accord Sedan. A left portion of the screen shows user control buttons used to select vehicles for which an affinity analysis is to be performed. In this example, the primary vehicle in the affinity analysis is the Honda Accord Sedan. The other vehicles are the Toyota Camry and the Ford Taurus. The time frame for the analysis is December 2002. A top part of the center portion of the screen shows a Venn diagram style graphical representation of an affinity of Accord Sedan for Camry and of an affinity of Accord Sedan for Taurus. The degree of overlap of the Accord Sedan circle with the Camry circle graphically represents the affinity of the Accord Sedan with the Camry. Likewise, the degree of overlap of the Accord Sedan circle with the Taurus circle graphically represents the affinity of the Accord Sedan with the Camry. The overlaps represent the degree of affinity. A bottom part of the center portion of the screen provides a table showing affinities among the three autos. The top row of the chart shows a numerical measure of the strength of the affinity of the Accord Sedan to the Camry (23.7%) and to the Taurus (3.1%). A middle row shows a strength of the affinity of the Camry to the Accord (30.6%) and Taurus (4.2%). A bottom row shows a strength of the affinity of the Taurus to the Accord (18.3%) and to the Camry (19.2%). A right portion of the screen shows a table that lists strengths of affinities of the primary vehicle in rank order to the fifteen vehicles with the strongest affinities. In this example, the table on the right also lists the affinity of the primary vehicle to each other auto (i.e., Taurus, no. 63) selected on the left for affinity analysis even if the other auto is not in the top fifteen affinities.
An affinity analysis may be used to find similar keywords for a given keyword. For example, the following list is a hypothetical example list of keywords that may be found through a hypothetical affinity analysis to be similar to the keyword “007”.                007 Similarity List        jamesbond        james bond 007        007.com        007 bond        bond        bond 007        james bond, 007        bond james bond        james bond 007: nightfire        james bond movies        007 nightfire        bond james        bond, james        die another day        james bond website        007 games        james bond characters        james bond nightfire        nightfire        agent 007        die another day movie        
Many of the above keywords do not even include the term “007”, although they have been found to be keywords similar to “007”.
One example of a practical use of an affinity analysis is to answer a question of the general type, if a user searches on the internet using a certain keyword, then what else is that user likely to search for on the internet? An affinity analysis can be used to answer this question. The analysis may, for example, result in identification of an ordered list of other keywords with the top 10, 100 or 1000 affinities to the certain keyword. Affinity analysis also can be used to answer questions of the general type, if a person buys flowers, what other things is that person likely to want to buy? These types of questions can be useful for cross-selling and in market research, for example.
Typically, an affinity between items is determined based at least in part upon how frequently items occur together in one or more groupings of items. There are many ways in which to define groupings of items. Examples of groupings that may occur in a computer network environment in connection with an IP address, a transaction identity (TID), a URL or a ‘cookie’.
An IP address may be used to identify a particular user's computer. A TID may be used to identify a particular transaction such as a purchase of goods or services. For instance, a user may use a computer with a given IP address to form a connection with an internet accessible server site and to then purchase a number of items over the internet. The given IP address may serve as a group identity (group ID) for a grouping of items consisting of the items purchased together by the user. Also, the purchase transaction may have a TID which can be serve as a group ID for a grouping that includes the purchased items or services.
Groupings of keywords can be associated with a URL. The URL may serve as the group ID, and the keywords can serve as the items in the grouping. Such keyword grouping can be built up over time, for example, by keeping a record of keyword-based internet searches in which a keyword is used to identify a set of URLs, and a user then selects one or more identified URLs to visit a web page on the internet. A database of groupings can be developed over time. Selected URLs serve as group IDs, and the keywords used to identify the URLs are items within the groupings.
An internet cookie can be used to create groupings. Cookies are a general mechanism which server side connections (such as CGI scripts) can use to both store and retrieve information on the client side of the connection. A CGI (Common Gateway Interface) is used to interface an external application with information servers such as HTTP or web-servers. The addition of a simple, persistent, client-side state significantly extends the capabilities of Web-based client/server applications. A server, when returning an HTTP object to a client, may also send a piece of state information which the client will store. Included in that state object is a description of the range of URLs for which that state is valid. Any future HTTP requests made by the client which fall in that range will include a transmittal of the current value of the state object from the client back to the server. The state object is called a cookie. A computer's cookie identifier can serve as a group ID, and information stored with the cookie serve as items in a grouping.
The internet has created enormous opportunities to gather data useful in the study affinities between items. Huge databases comprising groupings such as those based upon IP addresses, TIDs, URLs or cookies can be developed. These databases can evolve over time as new grouping information is added.
While the internet is recognized as superb platform from which to find affinities between things like products, it has not been as efficient as a forum for finding affinities between people at a personal level. Although the internet has created new venues, such as chat rooms, for people to become acquainted with each other, it is often not a very been effective as a tool to help people to meet others who are compatible on a more personal level. A common approach used via the internet by individuals interested in finding people with whom they are compatible is the personals advertisement. A typical personals advertisement involves the posting of an on-line ad on an internet site. Such an ad generally includes selected information about a person. The advertisement may be characterized as personal because it is about an individual person. The advertisement also may be characterized as personal because, generally, it is created by a person to describe his or her own characteristics and interests. Usually, the goal of a personals advertisement is locate a companion with whom the personals advertiser can strike up a personal relationship.
Posting an advertisement typically involves a process in which personal advertisement creator (personals advertiser) fills out an online form which has several different information fields in which different types of information is entered. There may be fields for gender, age, location, employment, education, political views, physical characteristics, hobbies, what the advertiser is looking for in a companion, etc. Completion of individual fields may be mandatory or optional. A photograph may be mandatory or optional.
Once a personals advertisement has been created, it added to a database of personals advertisements that is accessible via the internet. Other individuals, who may or may not have posted their own personals ads in the personals database, can search the personals database for personals ads that describe persons with whom they may be compatible. A personals database search typically involves gaining access via the internet to an online personals ads search form which includes several different fields to receive different information describing the type of person the searcher wants to become acquainted with. These fields typically are the same as or quite similar to the fields filled in by a personals ad creator when filling out a form to describe himself or herself.
The information in the personals ads form fields and in the search form fields each constitute criteria by which the compatibility between searcher and individual personals ads creators is measured. Information entered in personals ads forms fields constitutes criteria set forth by personals ads creators. Information entered into search form fields constitutes criteria set forth by the searcher.
A computer implemented automated search process searches the database for personals ads with criteria that closely match the search criteria entered by the searcher. Personals ads with criteria that meet a prescribed degree of similarity to a searcher's search criteria are presented as matches to the searcher. The search process may present to the searcher results that include more than one matching personals ad. Moreover, the search process may present a prioritized list of matching personals ads in which ads are ordered based upon the degree to which their criteria match the searcher's search criteria. The searcher and personals ad creator then may arrange to get in touch with one another, perhaps electronically through email or instant messaging, for example.
While earlier approaches to online personals advertisements generally have been acceptable, there have been shortcomings with their use. For example, matching personals advertisers and searchers based upon degree of correlation between specific criteria entered by searcher and creator can be quite limiting since it turns up results based upon matching of specific pre-conceived criteria. Matching searchers with personals ad creators based only upon criteria matching does not really open the imagination to other qualities in a person the searcher or the ad creator might find to be compelling. Also, finding a companion based primarily upon a criteria matching process does not provide the searcher or the personals advertiser with any systematic feedback as to how he or she might adjust a search pattern to improve the chances of locating the right person. Thus, criteria matching tends to narrow the scope of a search based upon pre-conceived criteria that may in fact not be the best.
Therefore, there has been a need for improvement in computer implemented processes for finding affinities among people. More specifically, there has been a need for improvement in finding affinities between people through online personals advertisements. The present invention meets these needs.